﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using Ausy.Servey.QuestionProvider.Contract;
using Ausy.Survey.Common.ServiceBehavior;
using Ausy.Silverlight.Survey.QuestionModule.Model;

namespace Ausy.Servey.QuestionProvider
{
    // REMARQUE : vous pouvez utiliser la commande Renommer du menu Refactoriser pour changer le nom d'interface "IService1" à la fois dans le code et le fichier de configuration.
    [ServiceContract(Namespace = "")]
    [SilverlightFaultBehavior]
    public interface IQuestionService
    {
        /// <summary>
        /// Cette méthode permet de récuperer un questionnaire avec ces questions
        /// </summary>
        /// <param name="value">Identifiant du Questionnaire</param>
        /// <returns>Questionnairecomprenant les questions</returns>
        [OperationContract]
        Questionnaire GetQuestionnaireByIdentifier(Guid value);

        /// <summary>
        /// Cette méthode permet d'enregistrer la réponse d'un questionnaire par un utilisateur 
        /// </summary>
        /// <param name="userQuestionnaire">Réponse au questionnaire par un utilisateur</param>
        [OperationContract]
        void CreateUserQuestionnaire(UserQuestionnaire userQuestionnaire);
    }
}
